home *** CD-ROM | disk | FTP | other *** search
/ Tricks of the Mac Game Programming Gurus / TricksOfTheMacGameProgrammingGurus.iso / More Source / C⁄C++ / Xconq 7.0d37 / doc / play.texi (.txt) < prev    next >
Texinfo Document  |  1995-05-04  |  59KB  |  1,228 lines

  1. @node Playing Xconq, Game Design, Acknowledgments, Top
  2. @chapter Playing Xconq
  3. This chapter is about how to play @i{Xconq}.
  4. Although @i{Xconq} supports a wide variety of games,
  5. and runs on many different computer systems,
  6. they all have much in common,
  7. and it is these common features that will be described here.
  8. This chapter, along with the document for your system
  9. and the document for the game you're playing,
  10. should provide all the information you need to play
  11. and enjoy @i{Xconq}.
  12. The term @dfn{interface} refers to the particular graphical user
  13. interface in use.  Examples include X11, curses, and Macintosh.
  14. Interfaces can vary radically from each other, since each is designed
  15. to be best suited for its environment.
  16. In practice though, interfaces will tend to share the same commands,
  17. so that you don't learn to learn a whole new set when
  18. switching computers.
  19. When reading this chapter, you should be aware that the term
  20. @dfn{game} is more precisely @dfn{game design}, since it is
  21. the set of rules and definitions of the game you want
  22. to play.  Since @i{Xconq} allows for many different kinds of
  23. games designs, much of the information in this chapter will
  24. be irrelevant to a particular game.  This will be indicated
  25. by phrases like ``some games'' or by saying that a game ``may''
  26. implement some concept or behavior.  You should learn what
  27. the game you're playing actually does in these cases.
  28. The names of the variables or tables to look at will often
  29. be mentioned in @code{computer type}.
  30. @node Setting Up, Starting Play, Xconq Games, Playing Xconq
  31. @section Setting Up A Game
  32. To get started with @i{Xconq},
  33. you have to select which game you want to play.
  34. The possibilities may be
  35. presented to you, or you may have to look in some sort of library
  36. to see what's available and then supply that name on a command line.
  37. If you don't do anything, then you will get a default game.
  38. Some games require no additional setup;
  39. once loaded, you're ready to go.
  40. Others will require additional decisions,
  41. such as the size and shape of the playing area,
  42. whether exploration will be necessary, or
  43. whether the game is realtime.
  44. These will all be called @dfn{variants}.
  45. The exact set of variants is determined by the game design,
  46. and the interface will (usually) tell you about them.
  47. In addition, most games also give you a choice of
  48. which player is to play which side in a game,
  49. as well how many players can join in.
  50. There are two kinds of players: humans, who have displays,
  51. and @dfn{artificial intelligence}s or @dfn{AI}s for short, which are
  52. run by the computer.  Some versions of @i{Xconq} may include
  53. more than one kind of AI; each type has a distinct name.
  54. The AI named @code{mplayer} is always available.
  55. An example might be a simulation of Europe @i{ca} 1900,
  56. named @code{"la-belle-epoque"}, in which the
  57. sides might be ``England'', ``France'', ``Germany'',
  58. and ``Austria-Hungary'', and
  59. the players might be Joe on a Sun-4, Natalie on a Mac, and
  60. two of the @code{mplayer} AIs.  You can set
  61. Natalie to play England, Joe to play Germany, and the two AIs
  62. to play France and Austria-Hungary.
  63. Some game designs provide a way to even things up if the players
  64. are of vastly differing abilities.
  65. In these designs, each player has an @dfn{advantage} that affects
  66. how much he or she gets to start with.
  67. Weaker players should get a
  68. higher advantage, so for instance a game with two players, of advantages
  69. 1 and 4, might give the advantage=4 player 8 cities while the advantage=1
  70. player gets only 2.
  71. This affects setup only; during the game all players are equal.
  72. The variability of advantage also depends on the game; some may
  73. allows differences of 10 to 1 or more, while others, especially
  74. historically accurate scenarios, will have a fixed advantage that
  75. the designer has set for each side.
  76. Once a trial player setup has been made,
  77. @i{Xconq} runs ``synthesis methods''.
  78. These methods are specified by the game design,
  79. and randomly generate anything that was not explicitly spelled out;
  80. for instance, the initial location of countries, terrain features,
  81. and so forth.
  82. As a player, you don't have to concern yourself about synthesis
  83. methods, but you should be aware that
  84. you may sometimes run into situations were a synthesis method simply cannot
  85. cope, and your game setup will fail.  A common case is where you
  86. ask for many players to be set up in a small world, and the
  87. set of constraints is too ``tight'' for an initial setup to
  88. succeed.  In such cases, you just have to try different setups
  89. and maybe complain to the game designer.
  90. Synthesis methods may also take a long time to run; for large worlds
  91. and lots of players, be prepared to wait.
  92. When initialization and setup succeeds, @i{Xconq} will try to open up
  93. displays for every player that wanted one.
  94. Exactly how this happens depends on the interface and networking
  95. capabilities of the version of @i{Xconq} you're using.
  96. Once this is done, @i{Xconq} will start the game for real.
  97. You may also get a warning that ``images were not found''.
  98. This happens when the game design specifies the use of
  99. particular icons or patterns (collectively call @dfn{images}
  100. here), but they cannot be found
  101. anywhere by @i{Xconq}.  This is not fatal, because @i{Xconq}
  102. will use generic default images instead, but the display may
  103. be hard to understand.  There are several possible reasons
  104. for images not to be found: 1) the game designer might have
  105. specified the use of particular images, but never defined them,
  106. 2) the library of images was not updated to include the needed
  107. images, or 3) the image library is not located where Xconq is
  108. looking.
  109. @c any other setup warnings to document?
  110. @node Starting Play, Worlds, Setting Up, Playing Xconq
  111. @section Starting Play
  112. What you'll first see depends entirely on the interface you're using.
  113. Typically there will be a map and a list of sides, possibly other
  114. displays as well.
  115. Help is available in the ``usual'' ways,
  116. and the interface is robust, so you can always just try
  117. to find your way around by experimentation.
  118. (This is best done by yourself, rather than in a game with a lot
  119. of other people.)
  120. The game proceeds as a sequence of @dfn{turns}.
  121. During each turn, you and the other players get to move
  122. your @dfn{units}, which can be anything from cities to submarines
  123. to insects, depending on the game.
  124. In addition, there may be @dfn{backdrop activities},
  125. such as changing seasons and weather, that go on all by themselves.
  126. These typically happen at the beginning or end of a turn,
  127. not while players are moving their units.
  128. Your exact goal in the game depends on the @dfn{scorekeepers}.
  129. Most games have at least one, some have several, and some have none.
  130. There are many kinds of scorekeepers, so be sure you know and
  131. understand what they are before getting too far into a game!
  132. If there are no scorekeepers at all, you can do whatever you like;
  133. any AIs playing in such a game will behave quite randomly.
  134. A game may last anywhere from a few turns to many hundreds.
  135. Again, this may be limited by the game design,
  136. or perhaps by the nature of the game.  For instance, a game
  137. of oil empires might be forced to end when the world's oil
  138. supplies are exhausted...
  139. @node Worlds, Units, Starting Play, Playing Xconq
  140. @section Worlds and Areas
  141. @quotation
  142. Gallia est omnis divisa in partes tres [All Gaul is divided into three
  143. parts] -- JULIUS CAESAR
  144. @end quotation
  145. The @i{Xconq} ``world'' is always a sphere.  However, you only play
  146. on a piece of its surface, which is called an @dfn{area}.
  147. Currently, there can only be one world and one area in a game;
  148. this may change in a future version of @i{Xconq}.
  149. An area is divided into a grid pattern of @dfn{cells}.
  150. Although squares with four or eight neighbors could be used
  151. (and were, in the very first version of @i{Xconq}),
  152. currently only a hexagon grid is available.
  153. Each cell is therefore adjacent to six others,
  154. in the directions NW, NE, W, E, SW, and SE.
  155. Areas have a @dfn{width} and @dfn{height} that are the number
  156. of cells across and up/down.
  157. Although you can ask for areas down to 10x10 or less,
  158. or up to 1000x1000 or even more, the ideal default is typically
  159. around 60x30.  Larger areas consume vast quantities of memory,
  160. plus they're slow and unwieldy to play on.
  161. If the area's width matches the circumference of the world,
  162. it is a cylinder in shape.
  163. The cylinder can be circumnavigated in an east-west direction.
  164. This is what an 8x6 cylinder area might look like
  165. (periods are sea, @code{+} and @code{^} are land,
  166. @code{#} indicates edge cells):
  167. @example
  168. # # # # # # # #
  169.  . . + + . . . .
  170. . . . + ^ . . .
  171.  . . . . . . . .
  172. . . . . ^ . . .
  173.  # # # # # # # #
  174. @end example
  175. Areas whose width is less than the world's circumference
  176. have a hexagonal shape.
  177. This is an 8x7 hexagon:
  178. @example
  179.    # # # # # 
  180.   # . + + . #
  181.  # . . + ^ . #
  182. # . . + ^ . . #
  183.  # . . . . . #
  184.   # . . ^ . #
  185.    # # # # # 
  186. @end example
  187. The top and bottom rows of the cylinder shape,
  188. and all the sides of the hexagon shape, although
  189. they are displayed, may not be entered (except when leaving the world
  190. entirely, which some games allow).
  191. These cells are called @dfn{edge} cells.
  192. The types of terrain you'll find in the world depends on the game design;
  193. typically there will be sea, land, mountains, swamp, and so forth,
  194. but more exotic games have been known to
  195. feature junkheaps, lava, and black holes as ``terrain''.
  196. Terrain can cover an entire cell, be linear features
  197. passing through or between cells, or be a coating
  198. overlaying other terrain.
  199. @dfn{Cell terrain} covers the entire cell uniformly,
  200. right out to its edges.
  201. A @dfn{border} is the boundary between two adjacent cells;
  202. it has a distinct terrain type, such as ``river'' or ``beach''.
  203. A @dfn{connection} is a narrow ribbon of terrain that reaches
  204. from the middle of one cell to the middle of an adjacent cell.
  205. Like borders, connections are distinct types, for instance ``road'',
  206. ``railway'', or ``canal''.
  207. Connections take precedence over borders and underlying cell terrain;
  208. in other words, if cell or border terrain is impassable, but there is
  209. a passable connection type, then the connection allows passage.
  210. Thus a connection can be usable as a bridge.
  211. You may also find more than one type of connection or border,
  212. between two cells, such as both a road and a rail line.
  213. A @dfn{coating} is like snow; it is a type that co-exists with
  214. cell terrain.  Coatings can change from turn to turn, varying
  215. in depth.
  216. Note that any single terrain type can only play one of these roles.
  217. This means you will never have river terrain that is both border
  218. and connection, nor will snow be both a coating and a cell type.
  219. In some games, each cell has an @dfn{elevation}, which is basically
  220. elevation above sea level, but could be any range of values, as set
  221. by the game design.
  222. The game design also defines the effect of elevation on movement,
  223. visibility, weather, and so forth.
  224. A world can have named @dfn{geographical features} or just @dfn{features},
  225. such as a bay, mountain, desert, or valley.
  226. Geographical features never have any direct effect on your game,
  227. but some interfaces may label features when drawing a map,
  228. or use them to help describe locations verbally,
  229. in phrases like @code{"1 hex NW of Broken Hill"}.
  230. A world can have @dfn{people} living in some or all of its cells.
  231. People belonging to a side report everything
  232. they see in their cell to their side.
  233. Some types of units will change the people's side to the
  234. unit's, if that unit is of the proper type,
  235. such as an occupying army.
  236. @node Units, Materials, Worlds, Playing Xconq
  237. @section Units
  238. @dfn{Units} can be almost anything:
  239. adventurers, armies, balloons, bicycles, dragons, triremes, spiders,
  240. battleships, bridges, headquarters, cities.
  241. Units move around, manufacture things, 
  242. fight with other units, and possibly die.
  243. They are the playing pieces of @i{Xconq}.
  244. Units have a location, either in out in the open terrain of
  245. a cell, or inside some other unit.
  246. In games that define connections, a unit may be
  247. on the connection rather
  248. than on the predominant terrain of the cell.
  249. (Think of a truck on a bridge.)
  250. There may be more than one unit in the open in a given cell,
  251. up to a game-defined limit.
  252. The collection of units sharing a cell is called a @dfn{stack}.
  253. A unit inside another unit will be called
  254. an @dfn{occupant} in a @dfn{transport},
  255. even if the ``transport'' is a type that can never move.
  256. A unit's location may also include an @dfn{altitude},
  257. expressed as its distance above the surface of the cell it is in.
  258. A unit either belongs to a side, or else it is considered @dfn{independent}.
  259. Independent units do not do very much.
  260. In more complex games, the unit's side merely represents the
  261. current ownership, and the unit may have a range of feelings
  262. towards each side, including its current one.
  263. In those games, it is possible for one of your units to be a traitor!
  264. Units can have a name, full name, a title, and a number,
  265. as appropriate to the situation.
  266. The name is an ordinary name like ``Joe Schmoe'' or ``Cincinnati'',
  267. while the full name might be something like ``Joseph P. Schmoe''.
  268. The title is a form of address such as ``Lord''. 
  269. The unit number, if used, is an ordinal that is maintained
  270. for each side and each unit type,
  271. so you can have both a ``1st national bank'' and
  272. a ``45th infantry division'' on your side.
  273. Names and numbers are always optional,
  274. and can usually be changed at any time during the game.
  275. Every unit starts out with a
  276. number of @dfn{hit points} or @dfn{hp} representing
  277. how much damage it can sustain before dying.
  278. Certain types of units, such as armies and fleet of ships,
  279. have multiple @dfn{parts}, which means that damage to them
  280. reduces their effective size.
  281. Multi-part units can merge with and detach from each other.
  282. Damaged units may recover their hp on their own, or else
  283. be repairable by explicit action, either by themselves or
  284. by another units (ships in port for example).
  285. In addition to occupants, a unit can also carry @dfn{supplies}
  286. (food, fuel, treasure, etc),
  287. which are type of materials (see the next section).
  288. Supplies are used up by movement, combat, and by just existing, and are
  289. gotten either by producing them or by transferring them from some other unit.
  290. Some games start units out with lots of supplies, while in others
  291. you have to acquire them on your own.
  292. What a unit can do at any one time depends on the @dfn{action points} or
  293. @dfn{acp} available to it.  Each sort of action - movement, construction,
  294. repair, etc - uses up at least one action point, and possibly more.
  295. A unit with an acp of 0 can never do anything on its own,
  296. although other units can still manipulate it.
  297. Also, not every type of unit can do every type of action;
  298. this is also defined by the game design.
  299. Section xxx lists all the types of actions that are
  300. possible in @i{Xconq}.
  301. [explain cxp, when it's implemented]
  302. You can lose a unit in many different ways:
  303. in combat, by running out of essential supplies,
  304. by being captured, by revolt, by garrisoning a captured unit,
  305. by leaving the world, or in accidents.
  306. @node Materials, Sides, Units, Playing Xconq
  307. @section Materials
  308. In @i{Xconq}, @dfn{materials} are basically bulk inanimate stuffs,
  309. like food or fuel.
  310. They are kept in units or in cells,
  311. up to limits defined by the game.
  312. Materials may be provided as part of the initial game setup,
  313. or else produced by units and cells.
  314. They are consumed by construction,
  315. movement, or merely in order to survive.
  316. You can also move materials around from unit to unit.
  317. Some games define laws of supply and demand,
  318. which will move materials for you,
  319. though not necessarily in the directions you would prefer!
  320. In a few games, possession of a material type may figure into your
  321. score (your gold in a medieval game, for instance).
  322. In other games, there are no types of materials at all.
  323. @node Sides, Moving Units, Materials, Playing Xconq
  324. @section Sides
  325. Each player in @i{Xconq} runs a @dfn{side}.
  326. The concept of ``side'' is somewhat abstract in @i{Xconq};
  327. units in a game belong to sides,
  328. but the sides themselves are not attached to any particular unit.
  329. Side often represent countries, but not invariably.
  330. It is important to be clear about sides and players.
  331. A side is a part of the simulated world, while a player
  332. is the actual real-world person or program that is playing the side.
  333. You yourself are always the player, but in one game you may play the
  334. German side, and in another the Klingon side.
  335. During a game, there will always be a player for each side,
  336. and vice versa.  The distinction is most important
  337. during setup, since you can swap players between sides.
  338. Each side can have a name and associated parts of speech,
  339. such as a noun for individuals on the side and an adjective
  340. to describe anything belonging to the side.
  341. [example?]
  342. Sides can also have emblems and colors that are used in displays.
  343. Some game designs preset all this, while others let you
  344. personalize as desired.
  345. See the @i{Xconq} document for your system to learn how to do this.
  346. @subsection Interaction Between Sides
  347. In games with two players, your interaction is usually pretty simple,
  348. i.e. bash on each other.  In games with many players, some human, some
  349. mechanical, it is possible to have a variety of relationships, ranging
  350. from complete trust to complete hatred.
  351. One thing you can do is to make your side be controlled by another side.
  352. This is basically surrendering, because the controlling side can
  353. manipulate any of your units as if they were its own.  The controlling
  354. side also has the option of allowing or forbidding you to move your
  355. own units.  The relationship is strictly one-sided, and only the
  356. controlling side can release the controlled side.  (Note that this
  357. is a way to have several people play on a side; have one player run the
  358. controlling side and
  359. be helped by several other players running controlled sides, usually
  360. with agreed-upon responsibilities.)
  361. A less extreme, but still very close, relationship is trust.  This is
  362. like a close ally - you can enter each other's transports, you share
  363. view data, and so forth.  Trust is a two-way relationship; both you
  364. and the other side each have to declare you want to trust the other.
  365. You can do this at any time.
  366. You can also, unilaterally, withdraw your trust in another side
  367. at any time.
  368. @subsection Agreements
  369. @quotation
  370. Diplomacy is to do and say //
  371. The nastiest thing in the nicest way.
  372. -- ISAAC GOLDBERG (1938)
  373. @end quotation
  374. If you don't want to declare a special relationship with another side,
  375. but still want to make some sort of adhoc arrangement, you can create
  376. an @dfn{agreement}.  An agreement is a sort of generalized treaty;
  377. it consists of a number of @dfn{terms} agreed to by a number of
  378. @dfn{signers}, which are sides.  Agreements may be public or secret,
  379. and you can declare them to be enforced by @i{Xconq} if the terms
  380. are in a form it understands. An agreement that just says
  381. ``help each other out'' cannot be evaluated by the computer!
  382. To make an agreement, you tell the interface to create one, fill in its
  383. terms, possibly give it a name, make up a list of proposed signers,
  384. then either propose it directly or else send to @dfn{drafters}, which
  385. are the side you want to help with the composition of the agreement.
  386. The draft also includes the list of sides that will know about the
  387. agreement.
  388. When the agreement is officially proposed, it will be displayed to
  389. all sides that are to sign, and represented as coming from the
  390. sides listed as @dfn{proposers}.
  391. @i{Xconq} will then ask each proposed signer to sign;
  392. if all do so, then the agreement goes into effect immediately.
  393. All sides that are to know about the agreement
  394. will be informed of its terms.
  395. Some interfaces may allow players to copy and modify a proposed and
  396. circulate it along with the original.  The proposing side may also
  397. withdraw a proposal, but cannot modify it without having it signed again
  398. by everybody involved.
  399. Once in effect, an agreement cannot be modified, and it cannot be
  400. removed unless it includes a term that provides for this.
  401. An agreement can have any number of terms.
  402. Each term can have one of several forms:
  403. A text string.  This is not interpreted in any way
  404. and could be a comment, preamble, or whatever.
  405. A true/false expression.  This must always be true for the agreement
  406. to be valid.
  407. A statement of an action.  This action will be performed at the instant
  408. that the agreement goes into effect.
  409. An if-then statement.  If the condition is true
  410. while the agreement is in effect, then the action will be performed.
  411. [need some examples]
  412. Note that the drafter/proposer/signer distinction has many uses;
  413. for instance, you can draft an agreement to be proposed by a coalition
  414. of sides, but the proposed signers are neutral sides that you want
  415. to keep quiet.
  416. @subsection Trade
  417. You can specify the nature of the trading relationship with other sides.
  418. The basic theory is that traders are businessfolk and don't care much about
  419. politics; they will do business with anybody.
  420. However, a player can define relationships with other sides via tariffs.
  421. A tariff is a per-side per-material percentage
  422. that will be taken from any transfer from/to units on one side to
  423. units on another side.
  424. You can define both import and export tariffs.
  425. A tariff of zero means free trade,
  426. and negative tariffs are allowed; in such cases your stock of
  427. material is used to add to the transfer.
  428. @subsection Tech Levels
  429. In some game designs, technology and research are important.
  430. These games give each side a set of @dfn{tech levels}
  431. (or just @dfn{tech} for short), one for each type of unit.
  432. The tech level represents the technological knowledge needed to
  433. see, operate and build a type of unit.
  434. Tech levels never decrease (they may in real life, but only over
  435. very long time intervals),
  436. and they can be increased by research and espionage.
  437. There are several tech thresholds for a unit.
  438. First there is @code{tech-to-see}, below which you will not even
  439. be aware of the existence of a unit (consider barbarians unable to see
  440. spy satellites passing overhead).  Then there is @code{tech-to-use},
  441. which you must have in order to make the unit do any actions.
  442. The @code{tech-to-understand} and @code{tech-on-acquisition} are
  443. points at which your side can increase its tech level just by owning
  444. a unit, and finally the @code{tech-to-build} is what you must
  445. have to create new units of the given type.
  446. See below to find out how you can do research and
  447. espionage to increase your tech level.
  448. @subsection Side Classes
  449. In some games, several sides may be very similar, while being very
  450. different from other sides in the same game.
  451. These similar sides can be given the same @dfn{side class}.
  452. Units may then be restricted to be usable only by the sides in
  453. a particular class.  (Note that this is different from tech level,
  454. which allows units to be used by any side that has managed to acquire
  455. a sufficient tech level.)
  456. @subsection Self-Units
  457. A @dfn{self-unit} is one that represents your whole side in some way.
  458. For instance, in a dungeon exploration game, your ``side'' might consist
  459. of an adventurer (you), your possessions, your followers, and perhaps more.
  460. In such a case, if the adventurer dies or is captured, then the game
  461. should be over, at least for you.
  462. Usually the self-unit will be set up by the game design,
  463. and all you have to do is to be aware that losing the self-unit
  464. ends your participation instantly.  Some games might have
  465. ``self-unit resurrection'' which just means that if another
  466. unit is available when the self-unit dies, then that another
  467. unit becomes your new self-unit.  This is like where admirals
  468. would leave their sinking flagship and board another ship,
  469. thus ``transferring the flag''.  (Admirals presumably being
  470. more valuable than captains, who're supposed go down with
  471. their ships!)  Some games may also allow you to change self-units
  472. manually.
  473. @node Moving Units, Automation, Sides, Playing Xconq
  474. @section Moving the Units
  475. Once the first turn begins,
  476. you can begin looking at the display and moving your units.
  477. Depending on the game design and startup options, you may or may not
  478. be moving simultaneously with the other players.
  479. If not, then the players move one at a time, in the order that their
  480. sides are listed in any display.
  481. Usually, you can choose freely which units to move next;
  482. you can move one a bit, switch to another, move it, then
  483. come back to the first one later, and so forth.
  484. Some game designs may require that you move units in a specific
  485. order; perhaps all your aircraft must finish all their movement
  486. before any ships can move.
  487. @subsection Turn Setup
  488. First, @i{Xconq} computes the number of action points
  489. available to each unit.
  490. Each unit gets an increment of action points equal to its
  491. @code{acp-per-turn}.  Actions during a turn reduce this down;
  492. when it reaches a value less than the cost of any action,
  493. the unit cannot do anything more until the next turn.
  494. The range of action points for a unit is
  495. normally 0 up to the value of @code{acp-per-turn},
  496. but the parameters @code{acp-min} and @code{acp-max}
  497. may allow for an extended range.
  498. You use this range by allowing a unit to accumulate extra action points
  499. by doing nothing for several turns,
  500. or to recover from an activity that used
  501. many action points all at once.
  502. Think of this as a sort of temporary action ``debt''.
  503. Units in debt at the beginning of a turn cannot act
  504. during that turn.
  505. @subsection Types of Actions
  506. Actions are the most basic kinds of things your units can do.
  507. During play, the interface will usually give you
  508. capabilities that are easy to use, such as the ability
  509. to point at a destination and have the unit figure
  510. out which path to take to get there,
  511. but all such input
  512. eventually breaks down into sequences of actions.
  513. You will therefore find it useful to understand all the types of
  514. actions available.
  515. Movement Group:
  516. @itemize @bullet
  517. @item
  518. @i{Move to} a given location.
  519. The unit being moved may be in a transport or out in the open,
  520. the destination is any location in the open (this will usually,
  521. but not always, be an adjacent cell), and may be at any altitude
  522. allowed for the unit.
  523. @item
  524. @i{Enter} a given transport unit.
  525. The transport need not be on the same
  526. side as the entering unit.
  527. @end itemize
  528. Combat Group:
  529. @itemize @bullet
  530. @item
  531. @i{Attack} a given unit.
  532. A successful attack causes damage and destruction
  533. to the unit being attacked.
  534. @item
  535. @i{Overrun} a given location.
  536. The overrunning unit attempts to
  537. occupy the destination, capturing, ejecting, or eliminating any
  538. unfriendly unit present.
  539. @item
  540. @i{Fire at} a given unit,
  541. possibly using a given material as ammunition.
  542. @item
  543. @i{Fire into} a given location,
  544. possibly using a given material as ammunition.
  545. @item
  546. @i{Capture} a given unit.
  547. @item
  548. @i{Detonate} at a given location.
  549. Detonation causes damage to all unprotected units in the vicinity
  550. of the detonation.
  551. @end itemize
  552. Construction Group:
  553. @itemize @bullet
  554. @item
  555. @i{Research} a given unit type.
  556. This increases the tech level for the type being researched.
  557. @item
  558. @i{Tool up} to build a given unit type.
  559. @item
  560. @i{Create} a unit of the given type.
  561. The unit will usually be incomplete.
  562. @item
  563. @i{Build} a given unit towards completion.
  564. @item
  565. @i{Repair} a given unit, restoring lost hp.
  566. @end itemize
  567. Unit Manipulation Group:
  568. @itemize @bullet
  569. @item
  570. @i{Disband} a given unit, causing it to disappear.
  571. @item
  572. @i{Transfer part} of a unit, either to another given unit,
  573. or creating a new unit.
  574. @item
  575. @i{Change side} of a given unit to a given side.
  576. @item
  577. @i{Change type} of a given unit to a given type.
  578. @end itemize
  579. Material Manipulation Group:
  580. @itemize @bullet
  581. @item
  582. @i{Produce} a given quantity of a given material type.
  583. @item
  584. @i{Transfer} a quantity of a given material type to a given unit.
  585. @end itemize
  586. Terrain Manipulation Group:
  587. @itemize @bullet
  588. @item
  589. @i{Add terrain} of a given type to a given location.
  590. @item
  591. @i{Remove terrain} of a given type from a given location.
  592. @end itemize
  593. Normally, you as the player and the side simply tell units to
  594. perform these actions themselves.
  595. However, some games will allow the unit to cause the action to
  596. done as if another unit were doing the action.
  597. For instance, a transport can pick up or drop off a non-moving unit.
  598. Not all interfaces can be guaranteed to allow the most general forms
  599. of all these actions; you must consult the interface's documentation
  600. to find out which of these actions is available.
  601. @subsection Movement
  602. Movement into a cell is easy to request, but each game will
  603. have many rules constraining possible moves, depending both
  604. on the unit and the terrain it is moving over.
  605. Certain kinds of terrain cost extra points to enter, leave,
  606. or cross.  The destination must almost always be adjacent
  607. to the unit's current location.
  608. The other kind of action is to enter/leave a transport.
  609. The only argument is the unit to enter,
  610. but again the constraints are complicated.
  611. The transport must have sufficient space,
  612. both the entering unit and the transport must have sufficient
  613. mp and acp to complete the move,
  614. and the entering unit must be able to cross the intervening terrain.
  615. The transport may be able to @dfn{ferry} the would-be occupant over
  616. any barriers; possibilities include no ferrying, ferrying only
  617. over the transport's terrain, ferrying over any borders, and ferrying
  618. over all terrain between the would-be occupant and the transport.
  619. In some games, you may be able to make one of your units leave the
  620. world entirely.  Sometimes this will seem like a good idea, perhaps
  621. to keep a trapped unit from falling into enemy hands, or because
  622. you win the game by leaving through a designated place.
  623. To do this, you just direct your unit (which must already be at the edge
  624. of the world) to move into one of the cells along the edge.
  625. If the departure is allowed, then the unit will simply vanish
  626. and be out of the game permanently.
  627. In other games, you may be able to do a @dfn{border slide}.
  628. This is where a unit can jump to a non-adjacent cell if the
  629. two cells have a border whose endpoints touch the starting
  630. and ending cell.  This is typically allowed in games so that
  631. ships can go through narrow straits.
  632. @subsection Combat
  633. @quotation
  634. War is a matter of vital importance to the State; the province of life
  635. or death; the road to survival or ruin.  It is mandatory that it be
  636. thoroughly studied.  -- SUN TZU (ca 400 BC)
  637. @end quotation
  638. There are two basic kinds of combat, each with two versions.
  639. A unit can attack or overrun, meaning that it comes to grips with
  640. an enemy in some way,
  641. or it can fire, meaning that it keeps its position and throws
  642. rocks or whatever at a target.
  643. @dfn{Attack} is directed at a particular unit,
  644. while @dfn{overrun} is a more complex action where the unit
  645. attempts to clear enough units from a given location
  646. so that it can move in.
  647. A unit wishing to attack picks a position
  648. or unit to attack, @i{Xconq} computes the defender's response,
  649. then the outcome is computed.
  650. In many games, that will be the end of a fight.
  651. In others, the units remain engaged in a @dfn{battle},
  652. and they cannot do any other type of action
  653. until they have disengaged completely.
  654. @dfn{Firing} can happen at long ranges, up to the @code{range} of a unit.
  655. It may or may not involve using a specific material as ammunition;
  656. if the game gives you a choice, you will have to choose which,
  657. or else all possible types will be used.
  658. You can @dfn{fire at} a specific unit if you can see it,
  659. otherwise you will have to @dfn{fire into} a cell;
  660. perhaps without knowing whether or not you're actually
  661. hitting anything in it.
  662. Some units are capable of capturing other units, with a probability depending
  663. on the types of both units involved.  If the capture attempt is successful,
  664. the capturer will move into the cell if possible, either as occupant or
  665. transport.  In some games, the capturer may be all or partially disbanded,
  666. to serve as guards.
  667. Capture may also occur as a side effect of a normal attack.
  668. Detonation is a special kind of ``combat'' available to some units.
  669. The action requires a location - either the unit's position or a nearby cell.
  670. Upon detonation, the detonating unit may lose some hp and even die
  671. (changing to its ``wrecked type'', if defined, or else vanishing).
  672. At the same time, it makes one hit on any units within its
  673. radius of effect.  Detonation may also be triggered automatically,
  674. such as by damage to the unit or even by another unit appearing nearby.
  675. @subsection Research
  676. @quotation
  677. Knowledge is power.  -- FRANCIS BACON (1597)
  678. @end quotation
  679. @dfn{Research} increases a side's tech for the unit type
  680. being researched.
  681. Although you can only research a specific type of unit,
  682. some game designs allow for a crossover effect, where increases in the
  683. tech level for one type also increases the level in others.
  684. You can have more than one researcher researching the same type,
  685. and thereby speed up your progress, but some games put a ceiling
  686. (@code{tech-per-turn}) on how much progress you can make in one turn.
  687. @subsection Construction
  688. @quotation
  689. We must be the great arsenal of democracy.
  690. -- FRANKLIN ROOSEVELT (1940)
  691. @end quotation
  692. @dfn{Tooling up} prepares a unit to create or construct the desired type.
  693. As with research, game designs may allow a crossover effect for tooling.
  694. Tooling may also decline gradually over time; this is called
  695. @dfn{tooling attrition}.
  696. Actual construction of a unit happens in two steps; creation and 
  697. building towards completion.
  698. Most interfaces will also schedule research and toolup
  699. actions if a unit is told to build something
  700. that needs tech or tooling first.
  701. @dfn{Creation} is the actual step of bringing a new unit into existence.
  702. If the new unit is @i{complete}, then it can be used immediately.
  703. If not (the usual case), then the incomplete unit will exist and belong
  704. to your side, but be unable to do anything at all.
  705. Incomplete transports cannot have any occupants,
  706. unless they are types capable of helping complete the transport.
  707. @dfn{Completion} is achieved by doing build actions on the unit.
  708. Multiple units can all work on completing the same unit,
  709. but they must be sufficiently close, within a range defined by the game
  710. (usually the same or an adjacent cell).
  711. In some games, there
  712. is a level of completion past which the unit will start working
  713. on itself automatically, and eventually become complete without any
  714. further action.
  715. It is @i{usually} the case that the same unit will be able to both
  716. create and complete a unit, but if not, you will have to pay special
  717. attention to your construction plan, since an incomplete unit cannot
  718. act in any way.
  719. Note that multi-part units will be considered ``complete'' when just one
  720. of their parts is completed.  Most interfaces will have the
  721. builder continue growing the just-completed unit as long as it
  722. remains within construction range.
  723. @subsection Repair
  724. @dfn{Repair} restores lost hit points to a unit.
  725. Repairs can be done by the damaged unit itself,
  726. if it is not too badly damaged,
  727. or by another unit that is close enough.
  728. Some games also feature automatic hit point recovery,
  729. so you don't always have to remember to do explicit repair actions.
  730. @subsection Disbanding
  731. @dfn{Disbanding} is a voluntary loss of hp, ultimately resulting
  732. in the disappearance of the unit.
  733. Most games only allow it for a few types of units.
  734. Depending on the game, you may be able to disband the
  735. unit in one turn, or you may need several turns before
  736. the unit actually goes away.
  737. Units with occupants can disband,
  738. but only if the occupants are unaffected by the action.
  739. If the unit would vanish or lose transport capacity,
  740. then the occupants must be disbanded or removed first.
  741. The interface may arrange to do this for you automatically.
  742. You always get back all of the disbanded unit's supplies,
  743. and they will be distributed to other units nearby.
  744. In addition, the disbanded unit itself may become a
  745. source of materials.  A percentage of the total material
  746. will become available after each action, if disbanding
  747. takes several turns to accomplish.
  748. @subsection Transferring Parts
  749. In games where units can vary in size, you can shift one or
  750. more parts of a multi-part unit to another unit,
  751. or else create an entirely new unit.
  752. You would use this action if, for instance, you wanted to detach
  753. a survey party from an exploring expedition, then rejoin later.
  754. @subsection Changing Side
  755. In many games, you can give some of your units to another side.
  756. You may also be able to take them from another side,
  757. if you control that side.
  758. Unlike most actions, you may be able to cause a unit to change
  759. side without actually expending any action points, if the game
  760. definition allows.
  761. @subsection Changing Type
  762. A few games allow you to change the type of a unit.
  763. For instance, you might have this ability in a construction-oriented
  764. game, where you can take a town that has accumulated sufficient
  765. building materials and change it into a city.
  766. Another possibility is that you have increased your technology level
  767. and are now able to transform a low-tech ship into a higher-tech ship.
  768. @subsection Producing Materials
  769. @dfn{Production} is how a unit can produce a quantity of a material.
  770. In many games, units already have a @dfn{base production} that is
  771. the amount of material that they produce automatically each turn.
  772. This will often depend on the terrain, so that explorers in the
  773. forest will always ``produce'' enough water to drink each turn,
  774. but will start to use up their water supply when in the desert.
  775. @subsection Transferring Materials
  776. Often there will be plenty of some type of material in the world,
  777. but the problem is getting it from the units that have a lot,
  778. to the units that need it badly.  The @dfn{transfer} action is
  779. how you move supply from one unit to another.
  780. As with production, many games have some automatic transfers
  781. set up.  For instance, games involving aircraft generally refuel
  782. them automatically whenever the aircraft has landed in a place
  783. with fuel to spare.
  784. @subsection Changing the Terrain
  785. In some games, units can add or remove borders, connections,
  786. or coatings, or may even be able to change the overall type of terrain
  787. in a cell.  The actions are @dfn{add-terrain}, @dfn{remove-terrain},
  788. and @dfn{alter-terrain}, respectively.
  789. The change happens immediately (for the sake of simplicity),
  790. but in practice, you may find that preparing for the change may
  791. take awhile.  For instance, the unit executing the change might
  792. have to accumulate acp or materials required for the change.
  793. @node Automation, Climate Backdrop, Moving Units, Playing Xconq
  794. @section Automation of Units and Sides
  795. Specifying the exact sequence of actions and their operands
  796. for every single unit would be mind-numbingly complex.
  797. It's not very realistic either!
  798. Therefore,
  799. @i{Xconq} includes several levels of automation for human players.
  800. The elements of automation are the @i{task}, the @i{plan}, the
  801. @i{doctrine}, and the @i{strategy}.  These are related to each
  802. other by @i{goals}.
  803. @dfn{Tasks} are single activities of a unit that require one or more 
  804. actions to accomplish.  Examples of tasks include moving to a 
  805. given position, or waiting 15 turns to be picked up by a transport.
  806. A @dfn{plan} is the unit's object that expresses its decided-upon behavior.
  807. Elements of a plan include a type, goal, and @dfn{task agenda},
  808. as well as more specific slots, such as a pointer to the unit
  809. currently under construction.
  810. All units that can act and that are on a side will have a plan, while independent
  811. units that can act may have one if preset by a scenario.
  812. Plans primarily govern individual behavior, in many cases allowing the unit
  813. to act on its own, without needing any explicit direction from the player.
  814. The @dfn{doctrine} is the set of parameters governing how the side will play
  815. and how its units should work generally.  For instance, per-unit
  816. doctrine specifies the point which a unit low on supply should
  817. start to look for a place to replenish itself.
  818. The @dfn{strategy} and associated subobjects is what an AI
  819. uses to make all the decisions about what to do.  This object is not
  820. directly visible, unless the AI is acting as your assistant
  821. and the interface includes a display of its current strategy.
  822. Of all these types of objects, only the doctrine can be manipulated
  823. directly;  all others are implicitly changed as a result of
  824. player commands, which are different for each interface.
  825. @subsection Doctrine
  826. There is a doctrine for each type of unit on your side.
  827. Several types may share a single doctrine, so changes to
  828. it will affect all types equally.
  829. @itemize @bullet
  830. @item
  831. wait-for-orders
  832. This is true if a unit should wait for explicit orders to be issued.
  833. If false, the unit should make up some sort of default plan and follow it.
  834. @item
  835. resupply-at
  836. @item
  837. rearm-at
  838. @end itemize
  839. [more doctrine info]
  840. @subsection Plans
  841. A unit's plan must be one of the types listed here.
  842. @itemize @bullet
  843. @item
  844. None.  This type of plan does absolutely nothing. 
  845. @item
  846. Passive.  Units with a passive plan will execute any tasks they have
  847. been given, but will not add to the task agenda on their own.
  848. [auto-add tasks if required by doctrine?]
  849. @item
  850. Offensive.  Units with an offensive plan will look for favorable
  851. combat opportunities, usually within an area specified as their goal
  852. to hold.
  853. @item
  854. Defensive.
  855. @item
  856. Exploratory.  Exploratory units will seek to collect information about
  857. unknown parts of the world.
  858. @end itemize
  859. @subsection Tasks
  860. Each task in a plan's task agenda must be one of the types listed here.
  861. @itemize @bullet
  862. @item
  863. Do nothing.
  864. @item
  865. Build new units, a given number of a given type.
  866. This task will do research actions if necessary and possible,
  867. and toolup actions if necessary.
  868. Also, if there is an incomplete unit of the given type
  869. nearby, this task will complete it before creating a new unit.
  870. @item
  871. Stand sentry at the present location for a given number of turns.
  872. @item
  873. Move in the given direction up to the given distance.
  874. @item
  875. Move to within a given distance of the given location.
  876. @item
  877. Move towards another given unit.
  878. @item
  879. Patrol an area around one or two given points.
  880. @item
  881. Attempt to hit a unit at a given location.
  882. @item
  883. Attempt to capture a unit at a given location.
  884. @item
  885. Resupply.
  886. @item
  887. Repair.
  888. @end itemize
  889. @subsection Time Limits
  890. One reason to automate your units is that some game
  891. designs define real-time limits on the length of a game.
  892. For instance, the game might be set to end in one hour,
  893. a single turn might be limited to always last at most 2 minutes,
  894. or your side might be limited to 15 minutes of playing time,
  895. in the manner of a chess clock.
  896. If such limits are in effect, your display should be able to show you
  897. how much time you have left at any moment; pay attention!
  898. When you run out of time, you are not automatically taken out of the game,
  899. but you can no longer do anything with your units.  Units that already
  900. have plans will continue to act on them.
  901. The game design may give you a limited number of
  902. ``timeouts'' that you can call to stop the clock.
  903. The timeout ends when you order a unit to do something.
  904. [how do players find out about time limits?]
  905. @section Standard Keyboard Commands
  906. These commands should be available in all versions of @i{Xconq}.
  907. Additional commands may be defined for some interfaces;
  908. see the interface's documentation for more details.
  909. @c should add a script to test dir to compare this listing with the
  910. @c commands listed in cmd.def, sort each in consistent order so this
  911. @c doesn't have to be alphabetical order
  912. @code{' '} @code{reserve} put into reserve for this turn
  913. @code{'?'} @code{help} display help info
  914. @code{'!'} @code{detonate} detonate
  915. @code{'.'} @code{recenter} center around the current point
  916. @code{'#'} @code{distance} display distance to selected place
  917. @code{'a'} @code{attack} attack
  918. @code{C-A} @code{auto} toggle AI control of unit
  919. @code{'b'} @code{southwest} move southwest
  920. @code{'B'} @code{southwest mult} move southwest multiple
  921. @code{'C'} @code{clear plan} clear unit plans
  922. @code{C-C} @code{end turn} end activity for this turn
  923. @code{'d'} @code{delay} delay unit action until after others have moved
  924. @code{'D'} @code{disband} disband a unit
  925. @code{'f'} @code{fire} fire
  926. @code{'F'} @code{formation} set formation
  927. @code{'g'} @code{give} give supplies
  928. @code{'G'} @code{give-unit} give unit to side
  929. @code{'h'} @code{west} move west
  930. @code{'H'} @code{west mult} move west multiple
  931. @code{'j'} @code{south} move south
  932. @code{'J'} @code{south mult} move south multiple
  933. @code{'k'} @code{north} move north
  934. @code{'K'} @code{north mult} move north multiple
  935. @code{'l'} @code{east} move east
  936. @code{'L'} @code{east mult} move east multiple
  937. @code{'m'} @code{move to} move to a place
  938. @code{'M'} @code{message} send a message to another side or sides
  939. @code{C-M} @code{end turn} end activity for this turn
  940. @code{'n'} @code{southeast} move southeast
  941. @code{'N'} @code{southeast mult} move southeast multiple
  942. @code{'o'} @code{other} other commands
  943. @code{'p'} @code{produce} set material production
  944. @code{'P'} @code{build} set up construction tasks
  945. @code{'Q'} @code{quit} get out of the game
  946. @code{'r'} @code{return} return to a resupply point
  947. @code{C-R} @code{refresh} refresh display
  948. @code{'s'} @code{sleep} go to sleep
  949. @code{'t'} @code{take} take supplies from unit or terrain
  950. @code{'T'} @code{take unit} take unit from another side
  951. @code{'u'} @code{northeast} move northeast
  952. @code{'U'} @code{northeast mult} move northeast multiple
  953. @code{'w'} @code{wake} wake units up
  954. @code{'W'} @code{wakeall} wake units and all their occupants up
  955. @code{'y'} @code{northwest} move northwest
  956. @code{'Y'} @code{northwest mult} move northwest multiple
  957. @code{'z'} @code{survey} switch between surveying and moving
  958. The following commands are not standardly bound to single keystrokes.
  959. @code{add player} allow another player to come into the game
  960. @code{ai} toggle the AI
  961. @code{copying} display the copying rules
  962. @code{name} set the name of a unit
  963. @code{print} print
  964. @code{version} display the version and copyright
  965. @code{warranty} display the non-warranty
  966. If designing is enabled, then the command
  967. @code{design}
  968. will enable and disable design mode.
  969. See Chapter 3 to find out more about what you can do in this mode.
  970. If debugging hooks are enabled, then the commands
  971. @code{D}
  972. @code{DG}
  973. @code{DM}
  974. will be available.
  975. They cause detailed transcripts of general computation,
  976. graphics, and AI behavior, respectively.
  977. They act as toggles, and are independent of each other,
  978. so you can control what kind of information is output.
  979. The transcript will go to stdout or to a file, depending
  980. on the interface and system.
  981. @node Climate Backdrop, Economy Backdrop, Automation, Playing Xconq
  982. @section Environmental Conditions
  983. Some games include @i{environmental effects},
  984. which includes what we normally think of as weather;
  985. the temperature, clouds, wind, rainfall, snowfall,
  986. and snow cover on the ground.
  987. The temperature falls in a range specified by the game, and may be
  988. computed in different ways depending on the game design,
  989. but typically depends on terrain, latitude,
  990. the severity of the seasons, and elevation.
  991. Temperature may also vary randomly from turn to turn and cell to cell.
  992. The contribution of each of these to the final
  993. temperature is up to the game design, as is the @emph{effect} of
  994. temperature.
  995. For each type of unit, there is both a @dfn{comfort range}
  996. and a @dfn{survival range} of temperatures.
  997. Units within their comfort range are unaffected by the temperature.
  998. Units outside the comfort range, but within the survival range,
  999. may experience reduction in acp and an increase in attrition.
  1000. Units outside the survival range die instantly. [add a prob, a al starve?]
  1001. A game may include clouds.
  1002. Their chief effect is to affect the seeing of units on the other
  1003. side of the clouds.
  1004. Wind affects the weather by causing clouds and storms to move around.
  1005. Certain unit types, such as sailing ships and balloons,
  1006. may depend on the wind to move around.
  1007. Games may assert that the playing area represents part of a sphere,
  1008. possibly tilted on its axis,
  1009. and that poles and equator correspond to various latitudes,
  1010. which has the effect of producing seasons.
  1011. The game specifies the temperature extremes for poles and equator,
  1012. for both midsummer and midwinter, then the weather phase interpolates
  1013. to get the average temperature for the current turn and at each latitude
  1014. in the world.
  1015. @node Economy Backdrop, Randomness Backdrop, Climate Backdrop, Playing Xconq
  1016. @section Economy
  1017. The economy in @i{Xconq} is based upon materials.
  1018. Games that do not include any material types do not
  1019. have any of the activities described in this section.
  1020. @subsection Consumption
  1021. Units consume their supplies, both in the course of existence,
  1022. and by motion/combat.
  1023. The rate depends on game and unit type; it consists of an overhead
  1024. consumed each turn without fail, and consumption for each cell of movement.
  1025. The total is a max, not a sum, since units with a constant consumption
  1026. rate are not likely to need additional supplies to move (consider foot
  1027. soldiers who eat as much sitting around as they do walking).
  1028. Supplies may also be consumed for production and repair, again depending
  1029. on game and unit types, but this consumption happens during the build phase.
  1030. Consumption is not affected by the situation of the consuming unit;
  1031. armies in troop transports eat just as much as when in the field.
  1032. @subsection Movement of Materials
  1033. Excess production is discarded, unless it can be unloaded into the
  1034. producer's occupying units, or distributed to nearby units via
  1035. @dfn{supply lines}.  Supply lines automatically exist between units
  1036. that are close enough (as set by the game), and there is no
  1037. need for explicit manipulation.
  1038. Supply line length depends on the game and the units on both ends,
  1039. but is not affected by the intervening terrain.
  1040. Supply redistribution is managed by logistics experts, who are ignorant
  1041. of the war effort and seek only to even everything out.
  1042. The redistribution method is rather adhoc; units try to get rid of all
  1043. their excess supply, and try to take up supply from other units within
  1044. supply range.  Each direction is controlled independently, so for instance
  1045. airplanes can get automatically refueled from a nearby city, but not from
  1046. each other.  No unit will transfer all of its supply via supply lines.
  1047. Normally units in the same cell can exchange supplies, but some games
  1048. can disable this behavior, so that explicit transfer using the give and
  1049. take commands is always necessary.
  1050. @node Randomness Backdrop, Scoring, Economy Backdrop, Playing Xconq
  1051. @section Random Events
  1052. Some games may include @dfn{random events}.
  1053. These are usually rare, but not always -- be sure you know the odds!
  1054. @subsection Accidents
  1055. For some types of units in some types of terrain,
  1056. there is a chance for an accident to wreck or eliminate the unit instantly.
  1057. This depends on both unit type and terrain type.
  1058. If the accident occurs, the unit is wrecked or vanishes
  1059. along with all its occupants.
  1060. ``Wrecking'' and ``vanishing'' have separate probabilities.
  1061. Occupants may survive wrecking, but never vanishing.
  1062. @subsection Attrition
  1063. Attrition is ``slow death'';
  1064. it takes away some number of hit points each time it occurs.
  1065. The rate of attrition depends on unit type and terrain or transport type.
  1066. Very low attrition rates may only take away one hp once in a while.
  1067. @subsection Revolt
  1068. In a revolt, a unit
  1069. changes sides spontaneously, perhaps to independence, perhaps to the side
  1070. of a nearby unit.
  1071. Occupants will either change over or be killed.
  1072. Any plans will be cancelled.
  1073. @subsection Surrender
  1074. Surrender only occurs if a unit is
  1075. capable of attack or capture is close enough to attempt it.
  1076. The capturing unit does not move.
  1077. Occupants of the surrendering unit also change over or die.
  1078. @c Chance of surrender is increased by low unit morale [define].
  1079. @node Scoring, , Randomness Backdrop, Playing Xconq
  1080. @section Scoring
  1081. @quotation
  1082. Victory at all costs, victory in spite of all terror,
  1083. victory however long and hard the road may be;
  1084. for without victory there is no survival.
  1085. -- WINSTON CHURCHILL (1940)
  1086. @end quotation
  1087. Different games can have different ways for players to win or lose.
  1088. Some games may not have any scoring at all.
  1089. You should be aware of the scoring rules
  1090. @emph{before} you start to play the game!
  1091. In @i{Xconq}, scoring is implemented by a game design's @dfn{scorekeepers}.
  1092. Each scorekeeper tests some sort of condition and/or maintains
  1093. a numeric score.
  1094. Scorekeepers also define when they run
  1095. (perhaps only during certain turns or certain times within a turn)
  1096. and which sides to look at.
  1097. Each scorekeeper is independent of the others,
  1098. meaning it only takes one to decide if you win or lose.
  1099. In a game with many players, winning and losing can be
  1100. a complicated issue; read the conditions carefully.
  1101. A scorekeeper can also decide to declare a game to be a draw and
  1102. end it on the spot.
  1103. Once a side has won, it is out of the game.
  1104. Some scorekeepers only allow one winner, others allow several;
  1105. in those cases, the scorekeeper will say what happens to the winning
  1106. side's units.
  1107. Once a side has lost, it cannot be brought back into a game, even if
  1108. another side tries to give it some more units or otherwise to reverse
  1109. things.
  1110. It may also be possible to declare a draw, but all players in a game
  1111. have to agree to this.  While human players just have to enter the
  1112. appropriate command (or answer appropriately when asking to quit the
  1113. game), AIs may not always be willing to go along,
  1114. particularly if they think they still have a chance to win.
  1115. If that happens, you must continue fighting.
  1116. (Some cowards have been known to abort the program or reboot the machine;
  1117. unfortunately @i{Xconq} cannot prevent such slimy tricks.)
  1118. Finally, some games may record everybody's final scores into a file.
  1119. @subsection ``Last Side Wins''
  1120. The most common form of scoring in @i{Xconq} is called
  1121. @code{last-side-wins}.  It is basically a fight to the death;
  1122. any side that loses all of its units loses, and the last side
  1123. with any units remaining is declared the winner.
  1124. It is possible that more than one side will lose all of its units
  1125. at the same time, in which case the game is declared a draw.
  1126. Since this would sometimes lead to bizarre stalemates (a submarine
  1127. could hide at sea, thus preventing the side from losing, for instance),
  1128. many games also define a @dfn{point value} for units.
  1129. In such cases, @code{last-side-wins} makes a side lose when the sum
  1130. of point values of all its units is zero,
  1131. and the interface will have some way to display your current points.
  1132. [following sections should help player interpret scorekeeper displays]
  1133. @subsection Occupation
  1134. Occupation means that you have one of your own units
  1135. in or near a fixed location or unit.
  1136. @subsection Unit Counts/Sums
  1137. This is a simple count of units, or else a summation of the values
  1138. of some property, such as hit points.
  1139. @section Advanced Play
  1140. This section covers additional features that may interest
  1141. experienced players.
  1142. @subsection Mixing Game Modules
  1143. Some interfaces (such as those using Unix-style command lines) may let you
  1144. ask for more than one game design when starting up.
  1145. This is sometimes useful, for instance, if you want to play on
  1146. the @code{steppes} world with a non-standard set of units;
  1147. your command line might look like @code{-g my-hacked-standard -g steppes}.
  1148. You can also turn things around and load a file with your own changes
  1149. after a complete game, as in {-g gettysburg -g my-tweaks}.
  1150. Be aware, however, that this cannot be guaranteed to work always,
  1151. since the mixed-together game designs may have
  1152. mutually conflicting definitions, or interfere with
  1153. each other in subtle or not-so-subtle ways.  Just imagine the disaster
  1154. if the world consists entirely of terrain that is instant death to your
  1155. initial units!  Worse, @i{Xconq} may start up and run OK for awhile,
  1156. then at the moment you're about to win---the object that you must capture
  1157. simply cannot be captured by any unit at all.
  1158. So be careful about mixing designs!
  1159. @subsection Personalizing Your Side
  1160. Many games will pre-assign your side's name, emblem, enemies, and
  1161. so forth.  However, many others allow you to change all that to suit
  1162. your tastes.
  1163. The name is a proper noun such as ``Poland'',
  1164. the noun is what you would call an individual,
  1165. such as ``Pole'', the plural is for more than one,
  1166. and <adj> is the adjective for things on that side, such as ``Polish''.
  1167. The color scheme is a comma-separated list of color names,
  1168. and <image name> names some sort of image file (like a bitmap).
  1169. The image may be of any size and combination of colors, with the caveat
  1170. that it may not always work correctly.  For instance, two subtly different
  1171. shades may get fused into a single solid color.  The emblem should also be
  1172. small enough to fit reasonably into unit icons.
  1173. As a rule, most national flags will fit into a 7x5 rectangle,
  1174. and coats of arms into a 7x9 region.
  1175. The color scheme should be useful by itself,
  1176. when the unit icons are too small to fit the emblem.
  1177. @i{Xconq} will not allow you to have the same name, color, or emblem as
  1178. another player in the same game.
  1179. The interface-specific side configuration uses the favored mechanism
  1180. for that interface (if one is defined).
  1181. You should check with the interface documentation for more details.
  1182. @section Playing Hints
  1183. This section is a collection of bits of information and advice derived
  1184. from players' actual experience playing @i{Xconq}.
  1185. @subsection Alliances
  1186. Informal alliances frequently happen in games involving more than two people,
  1187. so I have a few words of advice.  First, an alliance between two of the
  1188. players is almost certain in a three-person game, and inevitably
  1189. results in the ``odd man out'' being quickly defeated.  In four-person
  1190. games, the alliances could be decided after looking at the map via
  1191. a command-line option such as @code{-v},
  1192. so that one pair is not hopelessly separated.  Five or more players is
  1193. going to be a free-for-all of formal and informal alliances.
  1194. Some scenarios are designed with a particular number of players in mind.
  1195. @subsection Advantage
  1196. When you set the advantage, @i{Xconq} multiplies the desired advantage
  1197. with the normal number of starting units, then divides by the default
  1198. advantage and ROUNDS DOWN.  This means that you might end up with a lot
  1199. fewer units than you thought.  For instance, suppose that you have a
  1200. game where each player starts with one large city and five towns, and
  1201. this is considered to be an advantage of 10, because one large city is
  1202. worth about as much as 5 towns.  Then if you select an
  1203. advantage of 8, and your opponent selects 14 (because you're a better
  1204. player perhaps), @i{Xconq} will give you 8/10 of the normal setup,
  1205. which means four towns and NO large city.  Your opponent will get
  1206. 14/10 of the setup, which works out to one large city and seven towns,
  1207. which is really a 1 to 3 disparity, much more than the planned 4 to 7.
  1208. @section Cheating
  1209. There is none.  The standard builtin AI @code{mplayer} does not cheat;
  1210. it always plays according to the same rules as you do.
  1211. This should be true of any AI that has been added to @i{Xconq}.
  1212. If you have evidence that would seem to indicate that any AI is using
  1213. information it should not have, or is otherwise cheating,
  1214. that is a bug and should be reported.
  1215. @section Technical Details
  1216. The coordinate system is ``oblique'',
  1217. with the X-axis in the usual horizontal,
  1218. and the Y-axis vertical, but tilted to the right at a 60-degree angle.
  1219. @example
  1220.       Y
  1221.   \  /
  1222.    \/
  1223. ---------X
  1224.   / \
  1225.  /   \
  1226. @end example
  1227. The additional left-leaning axis is the x = - y line.
  1228.